This invention is related to a method and apparatus for facilitating the management of information related to all aspects of a particular organizational structure. More particularly, this invention relates to a database system with a particular classification framework which is adaptable to a wide variety of organizational structures.
There are a wide variety of database structures which are available for collecting, storing, organizing, and distributing information related to the operation of an organization. Conventional systems classify information by storing it in various predefined categorizes. While the pre-definitions are often optimized for a particular application, they also make the system inflexible and limit the amount and scope of information which can be stored, especially when the environmental structure is modified from that used as a model for the pre-definitions. Often, separate database systems are used for different applications within the same organization, such as payroll and inventory. It is useful to be able to cross-reference information from these disparate database systems. However, processing the stored data and information is often complicated due to the use of different data formats and protocols.
In addition, while conventional systems can be customized, the individual database management systems for each application or module require the majority of the development resources for each customized function. Thus, the design of a conventional system can require a significant investment of time, manpower and capital.
Further, an underlying assumption of conventional information management systems is that it is the discrete elements of information which are of primary value. While many methods are available for relating one piece of information stored in a system to another, such as relating the name of an employee to a particular department and project, conventional systems fail to provide adequate mechanisms for providing value to the relationship itself, separate from the value of the actual related elements.
Accordingly, it is an object of the present invention to provide an information database framework which is readily adaptable for storing and organizing information related to all aspects of an organization.
It is another object of the present invention to provide a database framework which standardizes the gathering, storing, and organizing of information for an organization.
These and other objects are achieved through the use of an Information Warehouse which is structured, populated, and accessed according to the present invention. The information warehouse contains one or more information bases. Each information base is divided into three major areas: a set of informational database tables for storing informational elements, a set of relational tables for storing the relationships between various informational elements and values attributed to those relationships, and a set of transactional tables for storing historical data. Any type of data and relationship between various data elements can be described as a combination of one or more of an element of information, a relationship and value, and a transaction. Thus, a database framework according to the invention can be used to store all aspects of an organization.
A particular advantage to the present database structure is that the relationships between informational elements are stored separately from the elements themselves. This allows particular relationship to be given a value which is separate from the particular value of the related data. In addition, all relationships pertaining to an individual piece of data are linked in a single database, regardless of where the relationship originated or when the information was entered into the database. This allows data and data relationships to be found, gathered, and utilized in an efficient manner. It also provides for efficient access to stored data using relationships which may not have originally been considered important when the data was originally entered because the entire web of relationships is available and can be traversed as needed.
An additional aspect of the present invention is a method for building and maintaining the interaction between the informational tables through the use of relational tables. Every item of data stored in the warehouse has at least one relationship associated with it. According to the invention, values and attributes for given data items and data item relationship are not associated directly with a given data item, but are indirectly associated through the given relationship. By storing values and attributes with reference to a given relationship additional dimensions of flexibility are added the information warehouse which is not present in analogous conventional database systems.
According to a preferred embodiment of the invention, the set of informational database tables is configured as a set of tables, each of which represents a particular type of data element which is included in the set of typical organizational information. By segregating informational elements in this manner, an informational table can be optimized to contain only the data necessary to fully catagorize the particular data element type, thus eliminating unnecessary redundancy between tables. In a particular implementation, seven informational tables are provided: (1) Locations, (2) Materials, (3) Individuals, (4) Activities or Projects, (5) Organizations, (6) Relationships, and (7) Attributes. The first five tables are used to store actual informational or data elements, such as places, things, people, etc., and are sufficient to represent any informational element which may need to be stored in the information warehouse. The sixth and seventh tables are used to store conceptual information defining the types of relationships that can exist between various informational elements and the types of attributes which can be associated with the various relationships. Three relational tables are provided to store the relationships and values attributed to those relationships. Finally, a set of transactional tables can be provided to track changes to the informational and relational tables, transfers of values from one subject to another, and to maintain a historical archive of transactions which are no longer relevant to current activities.